// 安装。
// rustup：curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh
// 添加环境。
// export PATH="$HOME/.cargo/bin:$PATH"
// 创建工程。
// cargo new hello
// cd hello
// 编译。
// cargo build
// 运行。
// ./target/debug/hello
// 清理。
// cargo clean
use std::mem;
fn main() {
    {
        let tmpval = 5; // 常量？
        let tmp1 = tmpval + 1;
        // tmpval = 6;// 失败！提示使用mut
        println!("1-val={},v1={}", tmpval, tmp1);
    }
    {
        let mut tmpval = 5;
        let tmp1 = tmpval + 1;
        tmpval = 6;
        println!("2-val={},v1={}", tmpval, tmp1);
    }
    {
        let mut tmpval = 5;
        let mut tmp1 = tmpval + 1;
        tmpval = tmp1; // 屏蔽这句话，警告说tmp1不需要mut？因为他没有被使用
        tmp1 = 8;
        println!("3-val={},v1={}", tmpval, tmp1);
    }
    {
        let tmpval = 2;
        println!("val size={}", mem::size_of_val(&tmpval));
        println!("type i32 size={}", mem::size_of::<i32>());
    }
}
